package nc.itf.am.prv;

import java.util.Map;

import nc.ui.bill.depend.PageInfo;
import nc.vo.am.common.IBillVOSkeleton;
import nc.vo.am.common.TabbedBillVO;
import nc.vo.pub.BusinessException;
import nc.vo.pub.ExtendedAggregatedValueObject;
import nc.vo.pub.SuperVO;

public interface IRentOut {
	public SuperVO[] queryRentOutHeadVOs(IBillVOSkeleton skeleton, String sWhereSql, String pk_corp, String pk_user,
			String billType, String transi_type, PageInfo p) throws BusinessException;

	public PageInfo queryRentOutPageInfo(IBillVOSkeleton skeleton, String whereSql, String pk_corp, String userId,
			String billType, String transi_type, PageInfo p) throws BusinessException;

	public Map<String, SuperVO[]> queryRentOutBodyVOs(ExtendedAggregatedValueObject billVO, String[] tableCodes)
			throws BusinessException;

	public Map<String, SuperVO[]> queryRentOutBodyVOs(String pk, Class<?>[] bodyVOClazzs, String[] tableCodes)
			throws BusinessException;

	public TabbedBillVO refreshRentOutVO(TabbedBillVO tabVO, String[] tableCodes) throws BusinessException;
}
